package com.itheima.stock.service;

import com.itheima.stock.pojo.domain.*;
import com.itheima.stock.vo.resp.PageResult;
import com.itheima.stock.vo.resp.R;
import org.apache.ibatis.annotations.Param;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

public interface StockService {
//大盘指数
    R<List<InnerMarkDomain>> getInnerMarketInfo();

//国内板块指数功能实现
    R<List<StockBlockDomain>> getSectorAll();


    /**
     * 分页查询最新股票交易
     * @param page
     * @param pageSize
     * @return
     */
    R<PageResult<StockUpdownDomain>> getStockInfoByPage(Integer page, Integer pageSize);


    //涨幅榜数据采集
    R<List<StockUpdownDomain>> getUpDownStockInfo();

    //涨停
    R<Map<String, List>> getStockUpDown();



    /**
     *  //股票展示分页--导出--数据
     * @param page
     * @param pageSize
     * @param resp
     */
    void exportStockUpDownInfo(Integer page, Integer pageSize, HttpServletResponse resp);


    /**
     * 统计T日和T-1每分钟交易额
     * @return
     */
    R<Map<String, List>> getComparedStockTradeAmt();

    /**
     * 统计最新时间股票各个涨幅区间的个数
     * @return
     */
    R<Map> getIncreaseRangeInfo();


    /**
     * T日分时数据线
     * @param
     * @return
     */
    R<List<Stock4MinuteDomain>> getScreenTimeSharing(String stockCode);


    /**
     * 统计股票日k线
     * @param stockCode
     * @return
     */
    R<List<Stock4EvrDayDomain>> getScreenDKline(@Param("stockCode") String stockCode);
}
